#ifndef MESH_H
#define MESH_H

#include <vector>
#include "../Geometry/Vertex.h"

namespace z_mesh {
	class Mesh
	{
	public:
		Mesh();
		Mesh(const Mesh& mesh);
		~Mesh();

		void setVertices(z_vertex::Vertex* vertices, unsigned int count);
		void setIndices(unsigned int* indices, unsigned int count);

		static Mesh triangle(z_vector::Vector3f& v1, z_vector::Vector3f& v2, z_vector::Vector3f& v3);
		static Mesh cube(double height_y, double width_z, double length_x);
		static Mesh plane(double width, double length);
		static Mesh tetrahedron();

		std::vector<z_vertex::Vertex> vertices;
		std::vector<unsigned int> indices;

	private:

	};
};

#endif